package com.rt.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.rt.common.annotation.Excel;
import com.rt.common.core.domain.BaseEntity;

/**
 * 组卷策略信息对象 rt_assembly_info
 * 
 * @author Yg
 * @date 2022-05-05
 */
public class RtAssemblyInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 策略id */
    private Long id;

    /** 科目id */
    @Excel(name = "科目id")
    private Long subjectId;

    /** 科目 */
    @Excel(name = "科目")
    private String subject;

    /** 策略名称 */
    @Excel(name = "策略名称")
    private String name;

    /** 总分数 */
    @Excel(name = "总分数")
    private BigDecimal totalScore;

    /** 总题数 */
    @Excel(name = "总题数")
    private Integer totalQuestions;

    /** 状态 0:未使用 1:使用中 */
    @Excel(name = "状态 0:未使用 1:使用中")
    private Integer status;

    /** 创建者名称 */
    @Excel(name = "创建者名称")
    private String createName;

    /** 策略编码 */
    @Excel(name = "策略编码")
    private String clbm;

    /** 智能题占比 */
    @Excel(name = "智能题占比")
    private BigDecimal smartProportion;

    /** 考试id */
    @Excel(name = "考试id")
    private Long examTypeId;

    /** 试题难度 */
    @Excel(name = "试题难度")
    private BigDecimal difficultyDegree;

    /** 最近使用时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最近使用时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date useTimeNearest;

    /** 使用单位 */
    @Excel(name = "使用单位")
    private String useNearest;

    /** 所属地市 */
    @Excel(name = "所属地市")
    private Long belongArea;

    /** 地市 */
    @Excel(name = "地市")
    private String area;

    /** 题型 */
    private List<RtAssemblyConf> rtAssemblyConfs;

    /** 难易度 */
    private List<RtAssemblyDifficulty> rtAssemblyDifficulties;

    /** 知识点 */
    private List<RtAssemblyKnowledge> rtAssemblyKnowledges;


    public List<RtAssemblyConf> getRtAssemblyConfs() {
        return rtAssemblyConfs;
    }

    public void setRtAssemblyConfs(List<RtAssemblyConf> rtAssemblyConfs) {
        this.rtAssemblyConfs = rtAssemblyConfs;
    }

    public List<RtAssemblyDifficulty> getRtAssemblyDifficulties() {
        return rtAssemblyDifficulties;
    }

    public void setRtAssemblyDifficulties(List<RtAssemblyDifficulty> rtAssemblyDifficulties) {
        this.rtAssemblyDifficulties = rtAssemblyDifficulties;
    }

    public List<RtAssemblyKnowledge> getRtAssemblyKnowledges() {
        return rtAssemblyKnowledges;
    }

    public void setRtAssemblyKnowledges(List<RtAssemblyKnowledge> rtAssemblyKnowledges) {
        this.rtAssemblyKnowledges = rtAssemblyKnowledges;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    public Integer getTotalQuestions() {
        return totalQuestions;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public void setCreateName(String createName) {
        this.createName = createName;
    }

    public String getArea() {
        return area;
    }

    public void setArea(String area) {
        this.area = area;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setSubjectId(Long subjectId) 
    {
        this.subjectId = subjectId;
    }

    public Long getSubjectId() 
    {
        return subjectId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setTotalScore(BigDecimal totalScore) 
    {
        this.totalScore = totalScore;
    }

    public BigDecimal getTotalScore() 
    {
        return totalScore;
    }
    public void setTotalQuestions(Integer totalQuestions) 
    {
        this.totalQuestions = totalQuestions;
    }

    public String getCreateName() 
    {
        return createName;
    }
    public void setClbm(String clbm) 
    {
        this.clbm = clbm;
    }

    public String getClbm() 
    {
        return clbm;
    }
    public void setSmartProportion(BigDecimal smartProportion) 
    {
        this.smartProportion = smartProportion;
    }

    public BigDecimal getSmartProportion() 
    {
        return smartProportion;
    }
    public void setExamTypeId(Long examTypeId) 
    {
        this.examTypeId = examTypeId;
    }

    public Long getExamTypeId() 
    {
        return examTypeId;
    }
    public void setDifficultyDegree(BigDecimal difficultyDegree) 
    {
        this.difficultyDegree = difficultyDegree;
    }

    public BigDecimal getDifficultyDegree() 
    {
        return difficultyDegree;
    }
    public void setUseTimeNearest(Date useTimeNearest) 
    {
        this.useTimeNearest = useTimeNearest;
    }

    public Date getUseTimeNearest() 
    {
        return useTimeNearest;
    }
    public void setUseNearest(String useNearest)
    {
        this.useNearest = useNearest;
    }

    public String getUseNearest()
    {
        return useNearest;
    }
    public void setBelongArea(Long belongArea) 
    {
        this.belongArea = belongArea;
    }

    public Long getBelongArea() 
    {
        return belongArea;
    }

    @Override
    public String toString() {
        return "RtAssemblyInfo{" +
                "id=" + id +
                ", subjectId=" + subjectId +
                ", subject='" + subject + '\'' +
                ", name='" + name + '\'' +
                ", totalScore=" + totalScore +
                ", totalQuestions=" + totalQuestions +
                ", status=" + status +
                ", createName='" + createName + '\'' +
                ", clbm='" + clbm + '\'' +
                ", smartProportion=" + smartProportion +
                ", examTypeId=" + examTypeId +
                ", difficultyDegree=" + difficultyDegree +
                ", useTimeNearest=" + useTimeNearest +
                ", useNearest=" + useNearest +
                ", belongArea=" + belongArea +
                ", area='" + area + '\'' +
                '}';
    }
}
